package com.hcy.userclient.client;

import com.hcy.rabbitbasicmodel.dto.HomeData;
import com.hcy.rabbitbasicmodel.dto.MyPage;
import com.hcy.rabbitbasicmodel.model.ResponseData;
import com.hcy.usermodel.dto.OptLogDTO;
import com.hcy.usermodel.dto.request.CustomerInfoRequestDTO;
import com.hcy.usermodel.dto.request.EvaluationRequestDTO;
import com.hcy.usermodel.dto.response.CustomerInfoResponseDTO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

/**
 * @Author huchenying
 * Description:
 * @Date 2021/11/20 13:06
 */
@FeignClient(name = "user-service-api")
public interface UserInfoClient {

    @PostMapping("/user/changeCoin")
    ResponseData<CustomerInfoResponseDTO> changeCoin(@RequestBody CustomerInfoRequestDTO requestDTO);
    @PostMapping("/user/evaluation")
    ResponseData<Object> evaluation(@RequestBody EvaluationRequestDTO requestDTO);
    @PostMapping("/user/baseInfo")
    ResponseData<CustomerInfoResponseDTO> baseInfo(@RequestBody CustomerInfoRequestDTO requestDTO);
    @PostMapping("/common/getOptLogList")
    ResponseData<MyPage<OptLogDTO>> getOptLogList(@Validated @RequestBody OptLogDTO request);
    @PostMapping("/homeData/getNewUsers")
    ResponseData<List<HomeData>> getNewUsers();
}
